perm filename DTEST.PAS[AL,HE] blob
sn#741778 filedate 1984-02-06 generic text, type C, neo UTF8
COMMENT ⊗ VALID 00002 PAGES
C REC PAGE DESCRIPTION
C00001 00001
C00002 00002 program dtest
C00005 ENDMK
C⊗;
program dtest;
type
vect = ARRAY[1..3] of real;
vect6 = ARRAY[1..6] of real;
trans = ARRAY[1..3,1..4] of real;
msgtypes = (initarmscmd,calibcmd,killarmscmd,wherecmd,
abortcmd,stopcmd,movehdrcmd,movesegcmd,
centercmd,operatecmd,movedonecmd,signalcmd,
setccmd,forcesigcmd,forceoffcmd,biasoncmd,biasoffcmd,setstiffcmd,
zerowristcmd,wristcmd,gathercmd,getgathercmd,readadccmd,writedaccmd,
errorcmd,floatcmd,setloadcmd,
armmagiccmd,realcmd,vectorcmd,transcmd);
errortypes = (noerror,noarmsol,timerr,durerr,toolong,featna,
unkmess,srvdead,adcdead,nozind,exjtfc,paslim,nopower,badpot,devbusy,
baddev,timout,panicb,nocart,cbound,badparm);
messagep = ↑message;
message = RECORD
next: messagep;
cmd: msgtypes;
ok: boolean;
dev, bits, n, evt1,evt2: integer;
dur: real;
CASE integer OF
1: (v: vect;
CASE integer OF
1: (t: trans);
2: (v6: vect6);
3: (fv1,fv2,fv3,mv1,mv2,mv3: real));
2: (sfac,wobble,pos: real);
3: (val,angle,mag: real);
4: (max,min: real);
5: (error: errortypes);
END;
var mes: messagep; i: integer; r: real; b: boolean;
begin
new(mes);
mes↑.next := nil;
mes↑.cmd := initarmscmd;
mes↑.cmd := transcmd;
mes↑.ok := TRUE;
mes↑.dev := 1;
mes↑.bits := 2;
mes↑.n := 3;
mes↑.evt1 := 4;
mes↑.evt2 := 5;
mes↑.dur := 1.01;
mes↑.v[1] := 2.0;
mes↑.v[3] := 4.2;
mes↑.t[1,1] := 1.1;
mes↑.t[3,1] := 3.1;
mes↑.t[1,4] := 1.4;
mes↑.t[3,4] := 3.4;
mes↑.v6[1] := 1.6;
mes↑.v6[6] := 6.6;
mes↑.fv1 := 1.1;
mes↑.mv3 := 6.1;
mes↑.sfac := 1.2;
mes↑.wobble := 2.2;
mes↑.pos := 3.2;
mes↑.error := noerror;
mes↑.error := badparm;
dispose(mes);
end.